package com.aviatorscript.avitorscriptmust.enums;

import lombok.Getter;

/**
 * 预定义校验规则类型枚举
 *
 * @author system
 */
@Getter
public enum ValidationRuleType {
    
    /**
     * 必填校验
     */
    REQUIRED("必填校验"),
    
    /**
     * 字符长度校验
     */
    STRING_LENGTH("字符长度校验"),
    
    /**
     * 数值范围校验
     */
    NUMBER_RANGE("数值范围校验"),
    
    /**
     * 正则表达式校验
     */
    REGEX_PATTERN("正则表达式校验"),
    
    /**
     * 邮箱格式校验
     */
    EMAIL_FORMAT("邮箱格式校验"),
    
    /**
     * 手机号格式校验
     */
    PHONE_FORMAT("手机号格式校验"),
    
    /**
     * 身份证格式校验
     */
    ID_CARD_FORMAT("身份证格式校验"),
    
    /**
     * 集合非空校验
     */
    COLLECTION_NOT_EMPTY("集合非空校验"),
    
    /**
     * 集合大小范围校验
     */
    COLLECTION_SIZE_RANGE("集合大小范围校验"),
    
    /**
     * 集合元素必填校验
     */
    COLLECTION_ELEMENT_REQUIRED("集合元素必填校验"),
    
    /**
     * 集合元素长度校验
     */
    COLLECTION_ELEMENT_LENGTH("集合元素长度校验"),
    
    /**
     * 集合元素数值范围校验
     */
    COLLECTION_ELEMENT_RANGE("集合元素数值范围校验"),
    
    /**
     * 自定义函数校验
     */
    CUSTOM_FUNCTION("自定义函数校验");
    
    private final String description;
    
    ValidationRuleType(String description) {
        this.description = description;
    }
} 